package com.pets.service;

import com.pets.qo.AppointmentAddQO;
import com.pets.qo.KnowledgeAddQO;
import com.pets.util.PageData;
import com.pets.util.Result;
import com.pets.vo.KnowledgesByPageVO;
import com.pets.vo.UserAdoptRecodeVO;
import com.pets.vo.UserCoverAdoptRecodeVO;

import java.util.List;


public interface AppointmentService {

    //预约的添加
    Result AppointmentAdd(AppointmentAddQO appointmentAddQO);

    /**
     * 通过用户id查询用户的领养记录
     * @param uId
     * @return
     */
    List<UserAdoptRecodeVO> getUserAdoptRecode(int uId);

    /**
     * 用户取消领养申请
     * @param apId
     * @return
     */
    Result cancelApply(int apId);

    /**
     * 查询机构被领养记录
     * @param uId
     * @return
     */
    List<UserCoverAdoptRecodeVO> getUserCoverAdoptRecode(int uId);

    /**
     * 机构同意领养
     * @param apId
     * @return
     */
    Result agreeApply(int apId);

    /**
     * 机构不同意领养
     * @param apId
     * @return
     */
    Result disagreeApply(int apId);

    /**
     * 机构下架流浪动物
     * @param aId
     * @return
     */
    Result shelvesAnimal(int aId);
}
